/*
 * TownValidator.h
 *
 *  Created on: 01 Ιουν 2010
 *      Author: Sartios
 */

#ifndef TOWNVALIDATOR_H_
#define TOWNVALIDATOR_H_

#include "ITownValidator.h"

class TownValidator : public ITownValidator {
public:
	/**
	 *
	 */
	TownValidator();
	/**
	 *
	 */
	TownValidator(const unsigned int minWordLength);
	/**
	 *
	 */
	virtual ~TownValidator();
	/**
	 *
	 */
	virtual bool	townNameHasAppropriateLength(const string *town);

	/**
	 *
	 */
	virtual const unsigned int	getAppropriateTownNameLength()const;
	/**
	 *
	 */
	virtual bool	townNameContainsValidContent(const string *town);
private:
	/**
	 *
	*/
	void	setAppropriateTownNameLength(const unsigned int minWordLength);

	/**
	 *
	 */
	const unsigned int *minWordLength_;
};

#endif /* TOWNVALIDATOR_H_ */
